package Multithreading;

/**
 * ClassName:Dome001
 * Package:Multithreading
 * Description:
 *
 * @Author:ZhangXin
 * @Create2023/3/5-14:10
 * @Version:v1.0
 */
public class Dome001 {
    /**多线程
     * 进程：进程是程序的基本执行实体
     *
     * 1.什么是多线程
     * 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中实际运作单位
     * 简单理解：应用软件中互相独立,可以同时运行的功能
     * 有了多线程,我们可以让程序同时做多件事情
     * 2.多线程的作用
     * 提高效率
     * 3.多线程的应用场景
     * 多个事情同时运行就需要用到多线程
     * 比如：软件中的耗时操作,所有聊天软件,所有服务器
     *
     * 并发：在同一时刻,有多个指令在单个CPU上交替执行
     * 并行：在同一时刻,有多个指令在多个CPU上同时执行
     * */


    /**
     * 多线程的实现方式
     * 1.继承Thread类的实现方式
     * 优点：编程比较简单,可以直接使用Thread类中的方法
     * 缺点：可以扩展性比较差,不能在继承其他类
     *
     * 2.实现Runnable接口的方式进行实现
     * 3.利用Callable接口和Future接口方式实现
     * 优点：扩展性强,实现该接口的同时还可以继承其他类
     * 缺点：编程相对复杂,不能直接使用Thread类中的方法
     * */
}
